package cn.edu.cqytxy;

import cn.edu.cqytxy.common.MyThread;

import java.util.concurrent.Callable;

/**
 * @author yinjw
 */
public class Test {

    public static void main(String[] args) {

        // 第一种方式：
        // newThreadDemo1();

        // 第二种方式:
//         newThreadDemo2();

        // 第三种方式(能捕获异常，并且拿到线程的执行返回值)：

    }

    private static void newThreadDemo1() {
        System.out.println("main--" + Thread.currentThread().getName());
        // 1.创建Thread对象
        Thread thread = new MyThread();
        // 2.只有调用start方法，才是提交给cpu调度，而不是直接调用run方法
        thread.start();
    }

    private static void newThreadDemo2() {
        Runnable runnable = new Runnable() {
            @Override
            public void run() {
                System.out.println("main--" + Thread.currentThread().getName());
            }
        };
        Thread thread = new Thread(runnable);
        thread.start();
    }

    private static void newThreadDemo3() {
        Callable<Integer> callable = new Callable() {
            @Override
            public Integer call() throws Exception {

                return null;
            }
        };
    }
}
